inspector: Down the model tree
authorMatthias Clasen <mclasen@redhat.com>
Sat, 4 Oct 2014 15:53:14 +0000 (11:53 -0400)
committerMatthias Clasen <mclasen@redhat.com>
Sat, 4 Oct 2014 15:53:14 +0000 (11:53 -0400)
Show nested tree models, inside filter or sort models. Without
this, you can't get at the data.

gtk/inspector/widget-tree.c

index 290c9f6a5d7084debd05e7f3ce2551de14be25c2..1f6357545e27a89aa0980a76a630f1af73fa6c7a 100644 (file)
@@ -41,6 +41,8 @@
 #include "gtktextview.h"
 #include "gtktreeselection.h"
 #include "gtktreestore.h"
+#include "gtktreemodelsort.h"
+#include "gtktreemodelfilter.h"
 #include "gtkwidgetprivate.h"
 
 enum
@@ -337,6 +339,20 @@ gtk_inspector_widget_tree_append_object (GtkInspectorWidgetTree *wt,
 
   g_free (address);
 
+  if (GTK_IS_TREE_MODEL_SORT (object))
+    {
+      GObject *child = G_OBJECT (gtk_tree_model_sort_get_model (GTK_TREE_MODEL_SORT (object)));
+      if (child)
+        gtk_inspector_widget_tree_append_object (wt, child, &iter, "model");
+    }
+
+  if (GTK_IS_TREE_MODEL_FILTER (object))
+    {
+      GObject *child = G_OBJECT (gtk_tree_model_filter_get_model (GTK_TREE_MODEL_FILTER (object)));
+      if (child)
+        gtk_inspector_widget_tree_append_object (wt, child, &iter, "model");
+    }
+
   if (GTK_IS_CONTAINER (object))
     {
       FindAllData data;